/*

	tested on asprotect 1.23 RC4 only - arz

							

*/



var j

var k



eoe main



main:

/* 

	check for signature bytes

*/

mov j,eip

add j,47

mov k,[j]

mov j,[k]

cmp j,746F7250		

je reset





/*

	last exception? 

*/

mov j,esp				//based on britedreams lastex

add j,1C

mov k,[j]

cmp k,400000

je exit

cmp k,1000000			//did some testing on notepad :P

je exit

jmp continue





reset:

/* 

	zero the debugger check flags for no debugger checks 

*/

mov j,eip

add j,41

mov k,[j]				// get ptr to debug check array

sub k,4					// k Ptr do IsDebuggerPresent check flag

mov [k],0				// kill it (api won't be called)

add k,8					// k Ptr do anti-debug checks flag	

mov [k],0				// kill the internal FS[?],TRW and system debugger checks

jmp continue





continue:

esto

jmp main



exit:

ret



